<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.9.1"/>
<title>IDA SDK: struct.hpp File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { init_search(); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">IDA SDK
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.9.1 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li class="current"><a href="files.html"><span>Header&#160;Files</span></a></li>
      <li><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="files.html"><span>File&#160;List</span></a></li>
      <li><a href="globals.html"><span>File&#160;Members</span></a></li>
    </ul>
  </div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#func-members">Functions</a> &#124;
<a href="#define-members">Macros</a> &#124;
<a href="#enum-members">Enumerations</a>  </div>
  <div class="headertitle">
<div class="title">struct.hpp File Reference</div>  </div>
</div><!--header-->
<div class="contents">
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Structure type management (assembly level types) </p>
</div><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classmember__t.html">member_t</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Describes a member of an assembly level structure.  <a href="classmember__t.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classstruc__t.html">struc_t</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Information about a structure type (assembly level)  <a href="classstruc__t.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structstruct__field__visitor__t.html">struct_field_visitor_t</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Implements action to take when a field is visited with <a class="el" href="struct_8hpp.html#a55f8f177dc0b2e79220fe8147314626a" title="Visit structure fields in a stroff expression or in a reference to a struct data variable. ">visit_stroff_fields()</a>  <a href="structstruct__field__visitor__t.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a7539b7f02dcfc0a79a53adbdef2fad7d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7539b7f02dcfc0a79a53adbdef2fad7d"></a>
<a class="el" href="pro_8h.html#ad8791d30d19843bc09b78bdf01a852ec">tid_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#a7539b7f02dcfc0a79a53adbdef2fad7d">get_struc_id</a> (const char *name)</td></tr>
<tr class="memdesc:a7539b7f02dcfc0a79a53adbdef2fad7d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get struct id by name. <br /></td></tr>
<tr class="separator:a7539b7f02dcfc0a79a53adbdef2fad7d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8204b13d9b77d5a3cab5281c67f2c01b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8204b13d9b77d5a3cab5281c67f2c01b"></a>
<a class="el" href="pro_8h.html#ab65ed42d67e6c517c746ff2a6a187016">ssize_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#a8204b13d9b77d5a3cab5281c67f2c01b">get_struc_name</a> (<a class="el" href="pro_8h.html#a386c10c6aa4340f1d63df85f40454fce">qstring</a> *out, <a class="el" href="pro_8h.html#ad8791d30d19843bc09b78bdf01a852ec">tid_t</a> id)</td></tr>
<tr class="memdesc:a8204b13d9b77d5a3cab5281c67f2c01b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get struct name by id. <br /></td></tr>
<tr class="separator:a8204b13d9b77d5a3cab5281c67f2c01b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afae3c34d36eefa73393909842c357b8b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afae3c34d36eefa73393909842c357b8b"></a>
<a class="el" href="pro_8h.html#a386c10c6aa4340f1d63df85f40454fce">qstring</a>&#160;</td><td class="memItemRight" valign="bottom"><b>get_struc_name</b> (<a class="el" href="pro_8h.html#ad8791d30d19843bc09b78bdf01a852ec">tid_t</a> id)</td></tr>
<tr class="separator:afae3c34d36eefa73393909842c357b8b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afb015b8375a2c6de54b439c027feabe0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afb015b8375a2c6de54b439c027feabe0"></a>
<a class="el" href="pro_8h.html#ab65ed42d67e6c517c746ff2a6a187016">ssize_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#afb015b8375a2c6de54b439c027feabe0">get_struc_cmt</a> (<a class="el" href="pro_8h.html#a386c10c6aa4340f1d63df85f40454fce">qstring</a> *buf, <a class="el" href="pro_8h.html#ad8791d30d19843bc09b78bdf01a852ec">tid_t</a> id, bool repeatable)</td></tr>
<tr class="memdesc:afb015b8375a2c6de54b439c027feabe0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get struct comment. <br /></td></tr>
<tr class="separator:afb015b8375a2c6de54b439c027feabe0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adb57f21963ace541e201cdd0d7ffedd3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adb57f21963ace541e201cdd0d7ffedd3"></a>
<a class="el" href="pro_8h.html#a8ddba56b40c4be92718f8059abf51147">idaman</a> <a class="el" href="pro_8h.html#adbc570541d9f9a0c4489f9f1fe5f5699">asize_t</a> <a class="el" href="pro_8h.html#a176294e75f953787714b9d08ffa89adf">ida_export</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#adb57f21963ace541e201cdd0d7ffedd3">get_struc_size</a> (const <a class="el" href="classstruc__t.html">struc_t</a> *sptr)</td></tr>
<tr class="memdesc:adb57f21963ace541e201cdd0d7ffedd3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get struct size (also see <a class="el" href="struct_8hpp.html#abcfd34601634f9dbe96a9402ba717368" title="Get struct size (also see get_struc_size(const struc_t *)) ">get_struc_size(tid_t)</a>) <br /></td></tr>
<tr class="separator:adb57f21963ace541e201cdd0d7ffedd3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abcfd34601634f9dbe96a9402ba717368"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abcfd34601634f9dbe96a9402ba717368"></a>
<a class="el" href="pro_8h.html#adbc570541d9f9a0c4489f9f1fe5f5699">asize_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#abcfd34601634f9dbe96a9402ba717368">get_struc_size</a> (<a class="el" href="pro_8h.html#ad8791d30d19843bc09b78bdf01a852ec">tid_t</a> id)</td></tr>
<tr class="memdesc:abcfd34601634f9dbe96a9402ba717368"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get struct size (also see <a class="el" href="struct_8hpp.html#adb57f21963ace541e201cdd0d7ffedd3" title="Get struct size (also see get_struc_size(tid_t)) ">get_struc_size(const struc_t *)</a>) <br /></td></tr>
<tr class="separator:abcfd34601634f9dbe96a9402ba717368"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1e5ae2a74257f36f352a253bac20fa6e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1e5ae2a74257f36f352a253bac20fa6e"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#a1e5ae2a74257f36f352a253bac20fa6e">is_varstr</a> (<a class="el" href="pro_8h.html#ad8791d30d19843bc09b78bdf01a852ec">tid_t</a> id)</td></tr>
<tr class="memdesc:a1e5ae2a74257f36f352a253bac20fa6e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Is variable size structure? <br /></td></tr>
<tr class="separator:a1e5ae2a74257f36f352a253bac20fa6e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1a0595fd6aacc279748170b4893c55eb"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1a0595fd6aacc279748170b4893c55eb"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#a1a0595fd6aacc279748170b4893c55eb">is_union</a> (<a class="el" href="pro_8h.html#ad8791d30d19843bc09b78bdf01a852ec">tid_t</a> id)</td></tr>
<tr class="memdesc:a1a0595fd6aacc279748170b4893c55eb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Is a union? <br /></td></tr>
<tr class="separator:a1a0595fd6aacc279748170b4893c55eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2cc691f03d3778c6982002e5db1bd6e2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2cc691f03d3778c6982002e5db1bd6e2"></a>
<a class="el" href="pro_8h.html#a8ddba56b40c4be92718f8059abf51147">idaman</a> <a class="el" href="classstruc__t.html">struc_t</a> *<a class="el" href="pro_8h.html#a176294e75f953787714b9d08ffa89adf">ida_export</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#a2cc691f03d3778c6982002e5db1bd6e2">get_member_struc</a> (const char *fullname)</td></tr>
<tr class="memdesc:a2cc691f03d3778c6982002e5db1bd6e2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get containing structure of member by its full name "struct.field". <br /></td></tr>
<tr class="separator:a2cc691f03d3778c6982002e5db1bd6e2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a04ebe9ca9d37aa7149d9be50f48a5293"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a04ebe9ca9d37aa7149d9be50f48a5293"></a>
<a class="el" href="pro_8h.html#a8ddba56b40c4be92718f8059abf51147">idaman</a> <a class="el" href="classstruc__t.html">struc_t</a> *<a class="el" href="pro_8h.html#a176294e75f953787714b9d08ffa89adf">ida_export</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#a04ebe9ca9d37aa7149d9be50f48a5293">get_sptr</a> (const <a class="el" href="classmember__t.html">member_t</a> *mptr)</td></tr>
<tr class="memdesc:a04ebe9ca9d37aa7149d9be50f48a5293"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get child struct if member is a struct. <br /></td></tr>
<tr class="separator:a04ebe9ca9d37aa7149d9be50f48a5293"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2cdeea94352c3a8b93ba68aa5b1c554a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2cdeea94352c3a8b93ba68aa5b1c554a"></a>
<a class="el" href="pro_8h.html#a8ddba56b40c4be92718f8059abf51147">idaman</a> <a class="el" href="classmember__t.html">member_t</a> *<a class="el" href="pro_8h.html#a176294e75f953787714b9d08ffa89adf">ida_export</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#a2cdeea94352c3a8b93ba68aa5b1c554a">get_member</a> (const <a class="el" href="classstruc__t.html">struc_t</a> *sptr, <a class="el" href="pro_8h.html#adbc570541d9f9a0c4489f9f1fe5f5699">asize_t</a> offset)</td></tr>
<tr class="memdesc:a2cdeea94352c3a8b93ba68aa5b1c554a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get member at given offset. <br /></td></tr>
<tr class="separator:a2cdeea94352c3a8b93ba68aa5b1c554a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae4780c8f896ad64396589e602dfe13b1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae4780c8f896ad64396589e602dfe13b1"></a>
<a class="el" href="pro_8h.html#a8ddba56b40c4be92718f8059abf51147">idaman</a> <a class="el" href="classmember__t.html">member_t</a> *<a class="el" href="pro_8h.html#a176294e75f953787714b9d08ffa89adf">ida_export</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#ae4780c8f896ad64396589e602dfe13b1">get_member_by_name</a> (const <a class="el" href="classstruc__t.html">struc_t</a> *sptr, const char *membername)</td></tr>
<tr class="memdesc:ae4780c8f896ad64396589e602dfe13b1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a member by its name, like "field44". <br /></td></tr>
<tr class="separator:ae4780c8f896ad64396589e602dfe13b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a897e9fcdf9aac7b8e15aa76399ed119d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a897e9fcdf9aac7b8e15aa76399ed119d"></a>
<a class="el" href="pro_8h.html#a8ddba56b40c4be92718f8059abf51147">idaman</a> <a class="el" href="classmember__t.html">member_t</a> *<a class="el" href="pro_8h.html#a176294e75f953787714b9d08ffa89adf">ida_export</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#a897e9fcdf9aac7b8e15aa76399ed119d">get_member_by_fullname</a> (<a class="el" href="classstruc__t.html">struc_t</a> **sptr_place, const char *fullname)</td></tr>
<tr class="memdesc:a897e9fcdf9aac7b8e15aa76399ed119d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a member by its fully qualified name, "struct.field". <br /></td></tr>
<tr class="separator:a897e9fcdf9aac7b8e15aa76399ed119d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8318186ee2be83dcd5b74d4513d711fa"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8318186ee2be83dcd5b74d4513d711fa"></a>
<a class="el" href="pro_8h.html#ab65ed42d67e6c517c746ff2a6a187016">ssize_t</a> <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#a8318186ee2be83dcd5b74d4513d711fa">get_member_fullname</a> (<a class="el" href="pro_8h.html#a386c10c6aa4340f1d63df85f40454fce">qstring</a> *out, <a class="el" href="pro_8h.html#ad8791d30d19843bc09b78bdf01a852ec">tid_t</a> mid)</td></tr>
<tr class="memdesc:a8318186ee2be83dcd5b74d4513d711fa"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a member's fully qualified name, "struct.field". <br /></td></tr>
<tr class="separator:a8318186ee2be83dcd5b74d4513d711fa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af4c9b167158af60380f6afdceab2ca74"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af4c9b167158af60380f6afdceab2ca74"></a>
<a class="el" href="pro_8h.html#a8ddba56b40c4be92718f8059abf51147">idaman</a> <a class="el" href="pro_8h.html#ab65ed42d67e6c517c746ff2a6a187016">ssize_t</a> <a class="el" href="pro_8h.html#a176294e75f953787714b9d08ffa89adf">ida_export</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#af4c9b167158af60380f6afdceab2ca74">get_member_name</a> (<a class="el" href="pro_8h.html#a386c10c6aa4340f1d63df85f40454fce">qstring</a> *out, <a class="el" href="pro_8h.html#ad8791d30d19843bc09b78bdf01a852ec">tid_t</a> mid)</td></tr>
<tr class="memdesc:af4c9b167158af60380f6afdceab2ca74"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get name of structure member. <br /></td></tr>
<tr class="separator:af4c9b167158af60380f6afdceab2ca74"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3ad9f5c50186a6008160af39a0b0865b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3ad9f5c50186a6008160af39a0b0865b"></a>
<a class="el" href="pro_8h.html#a386c10c6aa4340f1d63df85f40454fce">qstring</a>&#160;</td><td class="memItemRight" valign="bottom"><b>get_member_name</b> (<a class="el" href="pro_8h.html#ad8791d30d19843bc09b78bdf01a852ec">tid_t</a> mid)</td></tr>
<tr class="separator:a3ad9f5c50186a6008160af39a0b0865b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a83f68814f41b8c22aaa7607f819f5f8b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a83f68814f41b8c22aaa7607f819f5f8b"></a>
<a class="el" href="pro_8h.html#ab65ed42d67e6c517c746ff2a6a187016">ssize_t</a> <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#a83f68814f41b8c22aaa7607f819f5f8b">get_member_cmt</a> (<a class="el" href="pro_8h.html#a386c10c6aa4340f1d63df85f40454fce">qstring</a> *buf, <a class="el" href="pro_8h.html#ad8791d30d19843bc09b78bdf01a852ec">tid_t</a> mid, bool repeatable)</td></tr>
<tr class="memdesc:a83f68814f41b8c22aaa7607f819f5f8b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get comment of structure member. <br /></td></tr>
<tr class="separator:a83f68814f41b8c22aaa7607f819f5f8b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7b26cd7eac6dcd15d1458992c4efa4b3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="pro_8h.html#adbc570541d9f9a0c4489f9f1fe5f5699">asize_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#a7b26cd7eac6dcd15d1458992c4efa4b3">get_member_size</a> (const <a class="el" href="classmember__t.html">member_t</a> *mptr)</td></tr>
<tr class="memdesc:a7b26cd7eac6dcd15d1458992c4efa4b3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get size of structure member.  <a href="#a7b26cd7eac6dcd15d1458992c4efa4b3">More...</a><br /></td></tr>
<tr class="separator:a7b26cd7eac6dcd15d1458992c4efa4b3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a999286bc99d7381de5cd467966f12d1a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a999286bc99d7381de5cd467966f12d1a"></a>
<a class="el" href="pro_8h.html#a8ddba56b40c4be92718f8059abf51147">idaman</a> bool <a class="el" href="pro_8h.html#a176294e75f953787714b9d08ffa89adf">ida_export</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#a999286bc99d7381de5cd467966f12d1a">is_varmember</a> (const <a class="el" href="classmember__t.html">member_t</a> *mptr)</td></tr>
<tr class="memdesc:a999286bc99d7381de5cd467966f12d1a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Is variable size member? <br /></td></tr>
<tr class="separator:a999286bc99d7381de5cd467966f12d1a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a63118e9b36f696afcb269228c5b38459"><td class="memItemLeft" align="right" valign="top"><a class="el" href="pro_8h.html#a8ddba56b40c4be92718f8059abf51147">idaman</a> <a class="el" href="classmember__t.html">member_t</a> *<a class="el" href="pro_8h.html#a176294e75f953787714b9d08ffa89adf">ida_export</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#a63118e9b36f696afcb269228c5b38459">get_best_fit_member</a> (const <a class="el" href="classstruc__t.html">struc_t</a> *sptr, <a class="el" href="pro_8h.html#adbc570541d9f9a0c4489f9f1fe5f5699">asize_t</a> offset)</td></tr>
<tr class="memdesc:a63118e9b36f696afcb269228c5b38459"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get member that is most likely referenced by the specified offset.  <a href="#a63118e9b36f696afcb269228c5b38459">More...</a><br /></td></tr>
<tr class="separator:a63118e9b36f696afcb269228c5b38459"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6053c84e7d10bb4bfeedc4561af9dcb6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6053c84e7d10bb4bfeedc4561af9dcb6"></a>
<a class="el" href="pro_8h.html#a8ddba56b40c4be92718f8059abf51147">idaman</a> <a class="el" href="pro_8h.html#ab65ed42d67e6c517c746ff2a6a187016">ssize_t</a> <a class="el" href="pro_8h.html#a176294e75f953787714b9d08ffa89adf">ida_export</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#a6053c84e7d10bb4bfeedc4561af9dcb6">get_next_member_idx</a> (const <a class="el" href="classstruc__t.html">struc_t</a> *sptr, <a class="el" href="pro_8h.html#adbc570541d9f9a0c4489f9f1fe5f5699">asize_t</a> off)</td></tr>
<tr class="memdesc:a6053c84e7d10bb4bfeedc4561af9dcb6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the next member idx, if it does not exist, return -1. <br /></td></tr>
<tr class="separator:a6053c84e7d10bb4bfeedc4561af9dcb6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a55e715f683f9866b727d12232de89659"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a55e715f683f9866b727d12232de89659"></a>
<a class="el" href="pro_8h.html#a8ddba56b40c4be92718f8059abf51147">idaman</a> <a class="el" href="pro_8h.html#ab65ed42d67e6c517c746ff2a6a187016">ssize_t</a> <a class="el" href="pro_8h.html#a176294e75f953787714b9d08ffa89adf">ida_export</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#a55e715f683f9866b727d12232de89659">get_prev_member_idx</a> (const <a class="el" href="classstruc__t.html">struc_t</a> *sptr, <a class="el" href="pro_8h.html#adbc570541d9f9a0c4489f9f1fe5f5699">asize_t</a> off)</td></tr>
<tr class="memdesc:a55e715f683f9866b727d12232de89659"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the prev member idx, if it does not exist, return -1. <br /></td></tr>
<tr class="separator:a55e715f683f9866b727d12232de89659"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae824ee337c3e36cb1d55cf6d9dbd0fc0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="pro_8h.html#a8ddba56b40c4be92718f8059abf51147">idaman</a> <a class="el" href="pro_8h.html#ad8791d30d19843bc09b78bdf01a852ec">tid_t</a> <a class="el" href="pro_8h.html#a176294e75f953787714b9d08ffa89adf">ida_export</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#ae824ee337c3e36cb1d55cf6d9dbd0fc0">add_struc</a> (<a class="el" href="pro_8h.html#aef265b11f25357d520dcfd40aa8c18f3">uval_t</a> idx, const char *name, bool <a class="el" href="struct_8hpp.html#a1a0595fd6aacc279748170b4893c55eb">is_union</a>=false)</td></tr>
<tr class="memdesc:ae824ee337c3e36cb1d55cf6d9dbd0fc0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a structure type.  <a href="#ae824ee337c3e36cb1d55cf6d9dbd0fc0">More...</a><br /></td></tr>
<tr class="separator:ae824ee337c3e36cb1d55cf6d9dbd0fc0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8e632561dfb0ff00236fd34b7d93d708"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8e632561dfb0ff00236fd34b7d93d708"></a>
<a class="el" href="pro_8h.html#a8ddba56b40c4be92718f8059abf51147">idaman</a> bool <a class="el" href="pro_8h.html#a176294e75f953787714b9d08ffa89adf">ida_export</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#a8e632561dfb0ff00236fd34b7d93d708">del_struc</a> (<a class="el" href="classstruc__t.html">struc_t</a> *sptr)</td></tr>
<tr class="memdesc:a8e632561dfb0ff00236fd34b7d93d708"><td class="mdescLeft">&#160;</td><td class="mdescRight">Delete a structure type. <br /></td></tr>
<tr class="separator:a8e632561dfb0ff00236fd34b7d93d708"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4f64fada72a83ec4eebb1d50f53acaad"><td class="memItemLeft" align="right" valign="top"><a class="el" href="pro_8h.html#a8ddba56b40c4be92718f8059abf51147">idaman</a> bool <a class="el" href="pro_8h.html#a176294e75f953787714b9d08ffa89adf">ida_export</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#a4f64fada72a83ec4eebb1d50f53acaad">set_struc_idx</a> (const <a class="el" href="classstruc__t.html">struc_t</a> *sptr, <a class="el" href="pro_8h.html#aef265b11f25357d520dcfd40aa8c18f3">uval_t</a> idx)</td></tr>
<tr class="memdesc:a4f64fada72a83ec4eebb1d50f53acaad"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set internal number of struct.  <a href="#a4f64fada72a83ec4eebb1d50f53acaad">More...</a><br /></td></tr>
<tr class="separator:a4f64fada72a83ec4eebb1d50f53acaad"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8ecda082089d4e107b072e8cf1df8101"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8ecda082089d4e107b072e8cf1df8101"></a>
<a class="el" href="pro_8h.html#a8ddba56b40c4be92718f8059abf51147">idaman</a> bool <a class="el" href="pro_8h.html#a176294e75f953787714b9d08ffa89adf">ida_export</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#a8ecda082089d4e107b072e8cf1df8101">set_struc_align</a> (<a class="el" href="classstruc__t.html">struc_t</a> *sptr, int shift)</td></tr>
<tr class="memdesc:a8ecda082089d4e107b072e8cf1df8101"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set structure alignment (<a class="el" href="group___s_f__.html#ga758f228e585003ae05f1d9e476ccbdd7" title="alignment (shift amount: 0..31) ">SF_ALIGN</a>) <br /></td></tr>
<tr class="separator:a8ecda082089d4e107b072e8cf1df8101"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a246899acae2bab0d259f0f44fd50b67d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a246899acae2bab0d259f0f44fd50b67d"></a>
<a class="el" href="pro_8h.html#a8ddba56b40c4be92718f8059abf51147">idaman</a> bool <a class="el" href="pro_8h.html#a176294e75f953787714b9d08ffa89adf">ida_export</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#a246899acae2bab0d259f0f44fd50b67d">set_struc_name</a> (<a class="el" href="pro_8h.html#ad8791d30d19843bc09b78bdf01a852ec">tid_t</a> id, const char *name)</td></tr>
<tr class="memdesc:a246899acae2bab0d259f0f44fd50b67d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set structure name. <br /></td></tr>
<tr class="separator:a246899acae2bab0d259f0f44fd50b67d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac19a8af44f5e0726c488b0eff62ef6b6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac19a8af44f5e0726c488b0eff62ef6b6"></a>
<a class="el" href="pro_8h.html#a8ddba56b40c4be92718f8059abf51147">idaman</a> bool <a class="el" href="pro_8h.html#a176294e75f953787714b9d08ffa89adf">ida_export</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#ac19a8af44f5e0726c488b0eff62ef6b6">set_struc_cmt</a> (<a class="el" href="pro_8h.html#ad8791d30d19843bc09b78bdf01a852ec">tid_t</a> id, const char *cmt, bool repeatable)</td></tr>
<tr class="memdesc:ac19a8af44f5e0726c488b0eff62ef6b6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set structure comment. <br /></td></tr>
<tr class="separator:ac19a8af44f5e0726c488b0eff62ef6b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aac091455bceeadbd384f57292a3dc2a2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="pro_8h.html#a8ddba56b40c4be92718f8059abf51147">idaman</a> <a class="el" href="struct_8hpp.html#a7e006e866b807ff36125e69097de8a48">struc_error_t</a> <a class="el" href="pro_8h.html#a176294e75f953787714b9d08ffa89adf">ida_export</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#aac091455bceeadbd384f57292a3dc2a2">add_struc_member</a> (<a class="el" href="classstruc__t.html">struc_t</a> *sptr, const char *fieldname, <a class="el" href="pro_8h.html#a7b0aeaed04e477c02cf8ea3452002d1a">ea_t</a> offset, <a class="el" href="pro_8h.html#a55dd00e03168fb5180830e87ef0a2c57">flags_t</a> flag, const <a class="el" href="unionopinfo__t.html">opinfo_t</a> *mt, <a class="el" href="pro_8h.html#adbc570541d9f9a0c4489f9f1fe5f5699">asize_t</a> nbytes)</td></tr>
<tr class="memdesc:aac091455bceeadbd384f57292a3dc2a2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add member to existing structure.  <a href="#aac091455bceeadbd384f57292a3dc2a2">More...</a><br /></td></tr>
<tr class="separator:aac091455bceeadbd384f57292a3dc2a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aee19ab243a3ea3bb160d42db31fe261b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aee19ab243a3ea3bb160d42db31fe261b"></a>
<a class="el" href="pro_8h.html#a8ddba56b40c4be92718f8059abf51147">idaman</a> bool <a class="el" href="pro_8h.html#a176294e75f953787714b9d08ffa89adf">ida_export</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#aee19ab243a3ea3bb160d42db31fe261b">del_struc_member</a> (<a class="el" href="classstruc__t.html">struc_t</a> *sptr, <a class="el" href="pro_8h.html#a7b0aeaed04e477c02cf8ea3452002d1a">ea_t</a> offset)</td></tr>
<tr class="memdesc:aee19ab243a3ea3bb160d42db31fe261b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Delete member at given offset. <br /></td></tr>
<tr class="separator:aee19ab243a3ea3bb160d42db31fe261b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a74df0b6078b09eb1d865adc4ea8b07b0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="pro_8h.html#a8ddba56b40c4be92718f8059abf51147">idaman</a> int <a class="el" href="pro_8h.html#a176294e75f953787714b9d08ffa89adf">ida_export</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#a74df0b6078b09eb1d865adc4ea8b07b0">del_struc_members</a> (<a class="el" href="classstruc__t.html">struc_t</a> *sptr, <a class="el" href="pro_8h.html#a7b0aeaed04e477c02cf8ea3452002d1a">ea_t</a> off1, <a class="el" href="pro_8h.html#a7b0aeaed04e477c02cf8ea3452002d1a">ea_t</a> off2)</td></tr>
<tr class="memdesc:a74df0b6078b09eb1d865adc4ea8b07b0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Delete members which occupy range of offsets (off1..off2).  <a href="#a74df0b6078b09eb1d865adc4ea8b07b0">More...</a><br /></td></tr>
<tr class="separator:a74df0b6078b09eb1d865adc4ea8b07b0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aee95c35fae8c287a2628f8667e8d1c9d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aee95c35fae8c287a2628f8667e8d1c9d"></a>
<a class="el" href="pro_8h.html#a8ddba56b40c4be92718f8059abf51147">idaman</a> bool <a class="el" href="pro_8h.html#a176294e75f953787714b9d08ffa89adf">ida_export</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#aee95c35fae8c287a2628f8667e8d1c9d">set_member_name</a> (<a class="el" href="classstruc__t.html">struc_t</a> *sptr, <a class="el" href="pro_8h.html#a7b0aeaed04e477c02cf8ea3452002d1a">ea_t</a> offset, const char *name)</td></tr>
<tr class="memdesc:aee95c35fae8c287a2628f8667e8d1c9d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set name of member at given offset. <br /></td></tr>
<tr class="separator:aee95c35fae8c287a2628f8667e8d1c9d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a34d268b5b8bef320fffe76187605a410"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a34d268b5b8bef320fffe76187605a410"></a>
<a class="el" href="pro_8h.html#a8ddba56b40c4be92718f8059abf51147">idaman</a> bool <a class="el" href="pro_8h.html#a176294e75f953787714b9d08ffa89adf">ida_export</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#a34d268b5b8bef320fffe76187605a410">set_member_type</a> (<a class="el" href="classstruc__t.html">struc_t</a> *sptr, <a class="el" href="pro_8h.html#a7b0aeaed04e477c02cf8ea3452002d1a">ea_t</a> offset, <a class="el" href="pro_8h.html#a55dd00e03168fb5180830e87ef0a2c57">flags_t</a> flag, const <a class="el" href="unionopinfo__t.html">opinfo_t</a> *mt, <a class="el" href="pro_8h.html#adbc570541d9f9a0c4489f9f1fe5f5699">asize_t</a> nbytes)</td></tr>
<tr class="memdesc:a34d268b5b8bef320fffe76187605a410"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set type of member at given offset (also see <a class="el" href="struct_8hpp.html#aac091455bceeadbd384f57292a3dc2a2" title="Add member to existing structure. ">add_struc_member()</a>) <br /></td></tr>
<tr class="separator:a34d268b5b8bef320fffe76187605a410"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4aaafc1a6aed486c4d49153e7aac1c01"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4aaafc1a6aed486c4d49153e7aac1c01"></a>
<a class="el" href="pro_8h.html#a8ddba56b40c4be92718f8059abf51147">idaman</a> bool <a class="el" href="pro_8h.html#a176294e75f953787714b9d08ffa89adf">ida_export</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#a4aaafc1a6aed486c4d49153e7aac1c01">set_member_cmt</a> (<a class="el" href="classmember__t.html">member_t</a> *mptr, const char *cmt, bool repeatable)</td></tr>
<tr class="memdesc:a4aaafc1a6aed486c4d49153e7aac1c01"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set member comment. <br /></td></tr>
<tr class="separator:a4aaafc1a6aed486c4d49153e7aac1c01"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af47e2aadfb39daa9c568c494d595b9ce"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af47e2aadfb39daa9c568c494d595b9ce"></a>
<a class="el" href="pro_8h.html#a8ddba56b40c4be92718f8059abf51147">idaman</a> bool <a class="el" href="pro_8h.html#a176294e75f953787714b9d08ffa89adf">ida_export</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#af47e2aadfb39daa9c568c494d595b9ce">expand_struc</a> (<a class="el" href="classstruc__t.html">struc_t</a> *sptr, <a class="el" href="pro_8h.html#a7b0aeaed04e477c02cf8ea3452002d1a">ea_t</a> offset, <a class="el" href="pro_8h.html#ac29a387cc69c0d1abb2f2ef05dad1a6f">adiff_t</a> delta, bool recalc=true)</td></tr>
<tr class="memdesc:af47e2aadfb39daa9c568c494d595b9ce"><td class="mdescLeft">&#160;</td><td class="mdescRight">Expand/Shrink structure type. <br /></td></tr>
<tr class="separator:af47e2aadfb39daa9c568c494d595b9ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2c207e3ad2f55100a66fec857481aff4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2c207e3ad2f55100a66fec857481aff4"></a>
<a class="el" href="pro_8h.html#a8ddba56b40c4be92718f8059abf51147">idaman</a> void <a class="el" href="pro_8h.html#a176294e75f953787714b9d08ffa89adf">ida_export</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#a2c207e3ad2f55100a66fec857481aff4">save_struc</a> (<a class="el" href="classstruc__t.html">struc_t</a> *sptr, bool may_update_ltypes=true)</td></tr>
<tr class="memdesc:a2c207e3ad2f55100a66fec857481aff4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Update struct information in the database (internal function) <br /></td></tr>
<tr class="separator:a2c207e3ad2f55100a66fec857481aff4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae780a9169f9ccf4bbdb9dc1efd912f6f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae780a9169f9ccf4bbdb9dc1efd912f6f"></a>
void <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#ae780a9169f9ccf4bbdb9dc1efd912f6f">set_struc_hidden</a> (<a class="el" href="classstruc__t.html">struc_t</a> *sptr, bool is_hidden)</td></tr>
<tr class="memdesc:ae780a9169f9ccf4bbdb9dc1efd912f6f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Hide/unhide a struct type. <br /></td></tr>
<tr class="separator:ae780a9169f9ccf4bbdb9dc1efd912f6f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a628a86bdbaffebb147414d63652d60c7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a628a86bdbaffebb147414d63652d60c7"></a>
void <a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#a628a86bdbaffebb147414d63652d60c7">set_struc_listed</a> (<a class="el" href="classstruc__t.html">struc_t</a> *sptr, bool is_listed)</td></tr>
<tr class="memdesc:a628a86bdbaffebb147414d63652d60c7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add/remove a struct type from the struct list. <br /></td></tr>
<tr class="separator:a628a86bdbaffebb147414d63652d60c7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af4d1f49726830ad01024d7b6e92d0914"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af4d1f49726830ad01024d7b6e92d0914"></a>
<a class="el" href="pro_8h.html#a8ddba56b40c4be92718f8059abf51147">idaman</a> bool <a class="el" href="pro_8h.html#a176294e75f953787714b9d08ffa89adf">ida_export</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#af4d1f49726830ad01024d7b6e92d0914">get_member_tinfo</a> (<a class="el" href="classtinfo__t.html">tinfo_t</a> *tif, const <a class="el" href="classmember__t.html">member_t</a> *mptr)</td></tr>
<tr class="memdesc:af4d1f49726830ad01024d7b6e92d0914"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get tinfo for given member. <br /></td></tr>
<tr class="separator:af4d1f49726830ad01024d7b6e92d0914"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0baf59d4c878690b5e91cd5d0ce3a68b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0baf59d4c878690b5e91cd5d0ce3a68b"></a>
<a class="el" href="pro_8h.html#a8ddba56b40c4be92718f8059abf51147">idaman</a> bool <a class="el" href="pro_8h.html#a176294e75f953787714b9d08ffa89adf">ida_export</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#a0baf59d4c878690b5e91cd5d0ce3a68b">del_member_tinfo</a> (<a class="el" href="classstruc__t.html">struc_t</a> *sptr, <a class="el" href="classmember__t.html">member_t</a> *mptr)</td></tr>
<tr class="memdesc:a0baf59d4c878690b5e91cd5d0ce3a68b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Delete tinfo for given member. <br /></td></tr>
<tr class="separator:a0baf59d4c878690b5e91cd5d0ce3a68b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaa3683a4790b5ad049a50afc0e0a961e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="pro_8h.html#a8ddba56b40c4be92718f8059abf51147">idaman</a> <a class="el" href="struct_8hpp.html#addab072d470c849945079dbd99ee1e21">smt_code_t</a> <a class="el" href="pro_8h.html#a176294e75f953787714b9d08ffa89adf">ida_export</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#aaa3683a4790b5ad049a50afc0e0a961e">set_member_tinfo</a> (<a class="el" href="classstruc__t.html">struc_t</a> *sptr, <a class="el" href="classmember__t.html">member_t</a> *mptr, <a class="el" href="pro_8h.html#aef265b11f25357d520dcfd40aa8c18f3">uval_t</a> memoff, const <a class="el" href="classtinfo__t.html">tinfo_t</a> &amp;tif, int flags)</td></tr>
<tr class="memdesc:aaa3683a4790b5ad049a50afc0e0a961e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set tinfo for given member.  <a href="#aaa3683a4790b5ad049a50afc0e0a961e">More...</a><br /></td></tr>
<tr class="separator:aaa3683a4790b5ad049a50afc0e0a961e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a781bca8e23e3b3512e15ff0dae577b23"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a781bca8e23e3b3512e15ff0dae577b23"></a>
<a class="el" href="pro_8h.html#a8ddba56b40c4be92718f8059abf51147">idaman</a> bool <a class="el" href="pro_8h.html#a176294e75f953787714b9d08ffa89adf">ida_export</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#a781bca8e23e3b3512e15ff0dae577b23">get_or_guess_member_tinfo</a> (<a class="el" href="classtinfo__t.html">tinfo_t</a> *tif, const <a class="el" href="classmember__t.html">member_t</a> *mptr)</td></tr>
<tr class="memdesc:a781bca8e23e3b3512e15ff0dae577b23"><td class="mdescLeft">&#160;</td><td class="mdescRight">Try to get tinfo for given member - if failed, generate a tinfo using information about the member id from the disassembly. <br /></td></tr>
<tr class="separator:a781bca8e23e3b3512e15ff0dae577b23"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a466886d2ec738ec0b5fc6dc2025c4cb5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a466886d2ec738ec0b5fc6dc2025c4cb5"></a>
<a class="el" href="unionopinfo__t.html">opinfo_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#a466886d2ec738ec0b5fc6dc2025c4cb5">retrieve_member_info</a> (<a class="el" href="unionopinfo__t.html">opinfo_t</a> *buf, const <a class="el" href="classmember__t.html">member_t</a> *mptr)</td></tr>
<tr class="memdesc:a466886d2ec738ec0b5fc6dc2025c4cb5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get operand type info for member. <br /></td></tr>
<tr class="separator:a466886d2ec738ec0b5fc6dc2025c4cb5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa67bb1a0d2bd28ee2831d259832bc339"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa67bb1a0d2bd28ee2831d259832bc339"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#aa67bb1a0d2bd28ee2831d259832bc339">is_anonymous_member_name</a> (const char *name)</td></tr>
<tr class="memdesc:aa67bb1a0d2bd28ee2831d259832bc339"><td class="mdescLeft">&#160;</td><td class="mdescRight">Is member name prefixed with "anonymous"? <br /></td></tr>
<tr class="separator:aa67bb1a0d2bd28ee2831d259832bc339"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a938be3da587de893d108c0854406d6e3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a938be3da587de893d108c0854406d6e3"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#a938be3da587de893d108c0854406d6e3">is_dummy_member_name</a> (const char *name)</td></tr>
<tr class="memdesc:a938be3da587de893d108c0854406d6e3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Is member name an auto-generated name? <br /></td></tr>
<tr class="separator:a938be3da587de893d108c0854406d6e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3f229cba1e325893f6145f622f7ca0c8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3f229cba1e325893f6145f622f7ca0c8"></a>
<a class="el" href="classmember__t.html">member_t</a> *<a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#a3f229cba1e325893f6145f622f7ca0c8">get_member_by_id</a> (<a class="el" href="pro_8h.html#a386c10c6aa4340f1d63df85f40454fce">qstring</a> *out_mname, <a class="el" href="pro_8h.html#ad8791d30d19843bc09b78bdf01a852ec">tid_t</a> mid, <a class="el" href="classstruc__t.html">struc_t</a> **sptr_place)</td></tr>
<tr class="memdesc:a3f229cba1e325893f6145f622f7ca0c8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check if the specified member id points to a struct member. <br /></td></tr>
<tr class="separator:a3f229cba1e325893f6145f622f7ca0c8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5cd2c370abfa7f0e5b8e2dfc82b7762a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5cd2c370abfa7f0e5b8e2dfc82b7762a"></a>
<a class="el" href="classmember__t.html">member_t</a> *<a class="el" href="pro_8h.html#a6505e7ff3b129d8b17258304886fd133">idaapi</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#a5cd2c370abfa7f0e5b8e2dfc82b7762a">get_member_by_id</a> (<a class="el" href="pro_8h.html#ad8791d30d19843bc09b78bdf01a852ec">tid_t</a> mid, <a class="el" href="classstruc__t.html">struc_t</a> **sptr_place=NULL)</td></tr>
<tr class="memdesc:a5cd2c370abfa7f0e5b8e2dfc82b7762a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check if the specified member id points to a struct member. convenience function. <br /></td></tr>
<tr class="separator:a5cd2c370abfa7f0e5b8e2dfc82b7762a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa6343b1bdec02edf36d8620e8da7582d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa6343b1bdec02edf36d8620e8da7582d"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#aa6343b1bdec02edf36d8620e8da7582d">is_member_id</a> (<a class="el" href="pro_8h.html#ad8791d30d19843bc09b78bdf01a852ec">tid_t</a> mid)</td></tr>
<tr class="memdesc:aa6343b1bdec02edf36d8620e8da7582d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Is a member id? <br /></td></tr>
<tr class="separator:aa6343b1bdec02edf36d8620e8da7582d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af36f0c122f48b2ff43aa082074c1d325"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af36f0c122f48b2ff43aa082074c1d325"></a>
<a class="el" href="pro_8h.html#a8ddba56b40c4be92718f8059abf51147">idaman</a> bool <a class="el" href="pro_8h.html#a176294e75f953787714b9d08ffa89adf">ida_export</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#af36f0c122f48b2ff43aa082074c1d325">is_special_member</a> (<a class="el" href="pro_8h.html#ad8791d30d19843bc09b78bdf01a852ec">tid_t</a> id)</td></tr>
<tr class="memdesc:af36f0c122f48b2ff43aa082074c1d325"><td class="mdescLeft">&#160;</td><td class="mdescRight">Is a special member with the name beginning with ' '? <br /></td></tr>
<tr class="separator:af36f0c122f48b2ff43aa082074c1d325"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a55f8f177dc0b2e79220fe8147314626a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="pro_8h.html#a8ddba56b40c4be92718f8059abf51147">idaman</a> <a class="el" href="pro_8h.html#a55dd00e03168fb5180830e87ef0a2c57">flags_t</a> <a class="el" href="pro_8h.html#a176294e75f953787714b9d08ffa89adf">ida_export</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#a55f8f177dc0b2e79220fe8147314626a">visit_stroff_fields</a> (<a class="el" href="structstruct__field__visitor__t.html">struct_field_visitor_t</a> &amp;sfv, const <a class="el" href="pro_8h.html#ad8791d30d19843bc09b78bdf01a852ec">tid_t</a> *path, int plen, <a class="el" href="pro_8h.html#ac29a387cc69c0d1abb2f2ef05dad1a6f">adiff_t</a> *disp, bool appzero)</td></tr>
<tr class="memdesc:a55f8f177dc0b2e79220fe8147314626a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Visit structure fields in a stroff expression or in a reference to a struct data variable.  <a href="#a55f8f177dc0b2e79220fe8147314626a">More...</a><br /></td></tr>
<tr class="separator:a55f8f177dc0b2e79220fe8147314626a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8cd86275b146d73936cdd92cf4d09934"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8cd86275b146d73936cdd92cf4d09934"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#a8cd86275b146d73936cdd92cf4d09934">stroff_as_size</a> (int plen, const <a class="el" href="classstruc__t.html">struc_t</a> *sptr, <a class="el" href="pro_8h.html#adbc570541d9f9a0c4489f9f1fe5f5699">asize_t</a> value)</td></tr>
<tr class="memdesc:a8cd86275b146d73936cdd92cf4d09934"><td class="mdescLeft">&#160;</td><td class="mdescRight">Should display a structure offset expression as the structure size? <br /></td></tr>
<tr class="separator:a8cd86275b146d73936cdd92cf4d09934"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><div class="groupHeader">Internal structures list</div></td></tr>
<tr><td colspan="2"><div class="groupText"><p>IDA maintains an internal vector of known structures.</p>
<p>Use these functions to work with this vector. </p>
</div></td></tr>
<tr class="memitem:a3b42dbf3a42f5d3276bcd200a55a5889"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3b42dbf3a42f5d3276bcd200a55a5889"></a>
<a class="el" href="pro_8h.html#a8ddba56b40c4be92718f8059abf51147">idaman</a> size_t <a class="el" href="pro_8h.html#a176294e75f953787714b9d08ffa89adf">ida_export</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#a3b42dbf3a42f5d3276bcd200a55a5889">get_struc_qty</a> (void)</td></tr>
<tr class="memdesc:a3b42dbf3a42f5d3276bcd200a55a5889"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get number of known structures. <br /></td></tr>
<tr class="separator:a3b42dbf3a42f5d3276bcd200a55a5889"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a85d2ea8f387b1b07aeaab63ba524a610"><td class="memItemLeft" align="right" valign="top"><a class="el" href="pro_8h.html#a8ddba56b40c4be92718f8059abf51147">idaman</a> <a class="el" href="pro_8h.html#aef265b11f25357d520dcfd40aa8c18f3">uval_t</a> <a class="el" href="pro_8h.html#a176294e75f953787714b9d08ffa89adf">ida_export</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#a85d2ea8f387b1b07aeaab63ba524a610">get_first_struc_idx</a> (void)</td></tr>
<tr class="memdesc:a85d2ea8f387b1b07aeaab63ba524a610"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get index of first structure.  <a href="#a85d2ea8f387b1b07aeaab63ba524a610">More...</a><br /></td></tr>
<tr class="separator:a85d2ea8f387b1b07aeaab63ba524a610"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaf74b0f354956a690bc8c770bbfa27a2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="pro_8h.html#a8ddba56b40c4be92718f8059abf51147">idaman</a> <a class="el" href="pro_8h.html#aef265b11f25357d520dcfd40aa8c18f3">uval_t</a> <a class="el" href="pro_8h.html#a176294e75f953787714b9d08ffa89adf">ida_export</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#aaf74b0f354956a690bc8c770bbfa27a2">get_last_struc_idx</a> (void)</td></tr>
<tr class="memdesc:aaf74b0f354956a690bc8c770bbfa27a2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get index of last structure.  <a href="#aaf74b0f354956a690bc8c770bbfa27a2">More...</a><br /></td></tr>
<tr class="separator:aaf74b0f354956a690bc8c770bbfa27a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8f988e27cbc3a3ec4c361c8c1592eae9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="pro_8h.html#aef265b11f25357d520dcfd40aa8c18f3">uval_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#a8f988e27cbc3a3ec4c361c8c1592eae9">get_prev_struc_idx</a> (<a class="el" href="pro_8h.html#aef265b11f25357d520dcfd40aa8c18f3">uval_t</a> idx)</td></tr>
<tr class="memdesc:a8f988e27cbc3a3ec4c361c8c1592eae9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get previous struct index.  <a href="#a8f988e27cbc3a3ec4c361c8c1592eae9">More...</a><br /></td></tr>
<tr class="separator:a8f988e27cbc3a3ec4c361c8c1592eae9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a57063f026ec4e0aca498adc1f55d01ec"><td class="memItemLeft" align="right" valign="top"><a class="el" href="pro_8h.html#a8ddba56b40c4be92718f8059abf51147">idaman</a> <a class="el" href="pro_8h.html#aef265b11f25357d520dcfd40aa8c18f3">uval_t</a> <a class="el" href="pro_8h.html#a176294e75f953787714b9d08ffa89adf">ida_export</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#a57063f026ec4e0aca498adc1f55d01ec">get_next_struc_idx</a> (<a class="el" href="pro_8h.html#aef265b11f25357d520dcfd40aa8c18f3">uval_t</a> idx)</td></tr>
<tr class="memdesc:a57063f026ec4e0aca498adc1f55d01ec"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get next struct index.  <a href="#a57063f026ec4e0aca498adc1f55d01ec">More...</a><br /></td></tr>
<tr class="separator:a57063f026ec4e0aca498adc1f55d01ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad42189a9c7e10a0df284428dfcd7e334"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad42189a9c7e10a0df284428dfcd7e334"></a>
<a class="el" href="pro_8h.html#a8ddba56b40c4be92718f8059abf51147">idaman</a> <a class="el" href="pro_8h.html#aef265b11f25357d520dcfd40aa8c18f3">uval_t</a> <a class="el" href="pro_8h.html#a176294e75f953787714b9d08ffa89adf">ida_export</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#ad42189a9c7e10a0df284428dfcd7e334">get_struc_idx</a> (<a class="el" href="pro_8h.html#ad8791d30d19843bc09b78bdf01a852ec">tid_t</a> id)</td></tr>
<tr class="memdesc:ad42189a9c7e10a0df284428dfcd7e334"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get internal number of the structure. <br /></td></tr>
<tr class="separator:ad42189a9c7e10a0df284428dfcd7e334"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a94b7fc0c2093f385012ddb5b1d05743a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a94b7fc0c2093f385012ddb5b1d05743a"></a>
<a class="el" href="pro_8h.html#a8ddba56b40c4be92718f8059abf51147">idaman</a> <a class="el" href="pro_8h.html#ad8791d30d19843bc09b78bdf01a852ec">tid_t</a> <a class="el" href="pro_8h.html#a176294e75f953787714b9d08ffa89adf">ida_export</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#a94b7fc0c2093f385012ddb5b1d05743a">get_struc_by_idx</a> (<a class="el" href="pro_8h.html#aef265b11f25357d520dcfd40aa8c18f3">uval_t</a> idx)</td></tr>
<tr class="memdesc:a94b7fc0c2093f385012ddb5b1d05743a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get struct id by struct number. <br /></td></tr>
<tr class="separator:a94b7fc0c2093f385012ddb5b1d05743a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4f7d9419fc4616db2450413427bd1e45"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4f7d9419fc4616db2450413427bd1e45"></a>
<a class="el" href="pro_8h.html#a8ddba56b40c4be92718f8059abf51147">idaman</a> <a class="el" href="classstruc__t.html">struc_t</a> *<a class="el" href="pro_8h.html#a176294e75f953787714b9d08ffa89adf">ida_export</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#a4f7d9419fc4616db2450413427bd1e45">get_struc</a> (<a class="el" href="pro_8h.html#ad8791d30d19843bc09b78bdf01a852ec">tid_t</a> id)</td></tr>
<tr class="memdesc:a4f7d9419fc4616db2450413427bd1e45"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get pointer to struct type info. <br /></td></tr>
<tr class="separator:a4f7d9419fc4616db2450413427bd1e45"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><div class="groupHeader">Struct offsets</div></td></tr>
<tr><td colspan="2"><div class="groupText"><dl class="section note"><dt>Note</dt><dd>for unions, soff == number of the current member </dd></dl>
</div></td></tr>
<tr class="memitem:a50759fd85eebb25000c9a4b7e28b5be3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="pro_8h.html#a8ddba56b40c4be92718f8059abf51147">idaman</a> <a class="el" href="pro_8h.html#a7b0aeaed04e477c02cf8ea3452002d1a">ea_t</a> <a class="el" href="pro_8h.html#a176294e75f953787714b9d08ffa89adf">ida_export</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#a50759fd85eebb25000c9a4b7e28b5be3">get_struc_prev_offset</a> (const <a class="el" href="classstruc__t.html">struc_t</a> *sptr, <a class="el" href="pro_8h.html#a7b0aeaed04e477c02cf8ea3452002d1a">ea_t</a> offset)</td></tr>
<tr class="memdesc:a50759fd85eebb25000c9a4b7e28b5be3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get offset of member with largest offset less than 'offset'.  <a href="#a50759fd85eebb25000c9a4b7e28b5be3">More...</a><br /></td></tr>
<tr class="separator:a50759fd85eebb25000c9a4b7e28b5be3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afe11be18398d534be6b5f4c33a23bf0b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="pro_8h.html#a8ddba56b40c4be92718f8059abf51147">idaman</a> <a class="el" href="pro_8h.html#a7b0aeaed04e477c02cf8ea3452002d1a">ea_t</a> <a class="el" href="pro_8h.html#a176294e75f953787714b9d08ffa89adf">ida_export</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#afe11be18398d534be6b5f4c33a23bf0b">get_struc_next_offset</a> (const <a class="el" href="classstruc__t.html">struc_t</a> *sptr, <a class="el" href="pro_8h.html#a7b0aeaed04e477c02cf8ea3452002d1a">ea_t</a> offset)</td></tr>
<tr class="memdesc:afe11be18398d534be6b5f4c33a23bf0b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get offset of member with smallest offset larger than 'offset'.  <a href="#afe11be18398d534be6b5f4c33a23bf0b">More...</a><br /></td></tr>
<tr class="separator:afe11be18398d534be6b5f4c33a23bf0b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae9c8cc9e81856e49de9697688e7d14c8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="pro_8h.html#a8ddba56b40c4be92718f8059abf51147">idaman</a> <a class="el" href="pro_8h.html#a7b0aeaed04e477c02cf8ea3452002d1a">ea_t</a> <a class="el" href="pro_8h.html#a176294e75f953787714b9d08ffa89adf">ida_export</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#ae9c8cc9e81856e49de9697688e7d14c8">get_struc_last_offset</a> (const <a class="el" href="classstruc__t.html">struc_t</a> *sptr)</td></tr>
<tr class="memdesc:ae9c8cc9e81856e49de9697688e7d14c8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get offset of last member.  <a href="#ae9c8cc9e81856e49de9697688e7d14c8">More...</a><br /></td></tr>
<tr class="separator:ae9c8cc9e81856e49de9697688e7d14c8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a79228860947a6137908c25949a91ad5a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="pro_8h.html#a8ddba56b40c4be92718f8059abf51147">idaman</a> <a class="el" href="pro_8h.html#a7b0aeaed04e477c02cf8ea3452002d1a">ea_t</a> <a class="el" href="pro_8h.html#a176294e75f953787714b9d08ffa89adf">ida_export</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#a79228860947a6137908c25949a91ad5a">get_struc_first_offset</a> (const <a class="el" href="classstruc__t.html">struc_t</a> *sptr)</td></tr>
<tr class="memdesc:a79228860947a6137908c25949a91ad5a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get offset of first member.  <a href="#a79228860947a6137908c25949a91ad5a">More...</a><br /></td></tr>
<tr class="separator:a79228860947a6137908c25949a91ad5a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a71a834e05b1fc81234b99e6c22cfc898"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a71a834e05b1fc81234b99e6c22cfc898"></a>
<a class="el" href="pro_8h.html#a7b0aeaed04e477c02cf8ea3452002d1a">ea_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#a71a834e05b1fc81234b99e6c22cfc898">get_max_offset</a> (<a class="el" href="classstruc__t.html">struc_t</a> *sptr)</td></tr>
<tr class="memdesc:a71a834e05b1fc81234b99e6c22cfc898"><td class="mdescLeft">&#160;</td><td class="mdescRight">For unions: returns number of members, for structs: returns size of structure. <br /></td></tr>
<tr class="separator:a71a834e05b1fc81234b99e6c22cfc898"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:aeb8e473dff428ee0345f5f055a121748"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aeb8e473dff428ee0345f5f055a121748"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#aeb8e473dff428ee0345f5f055a121748">STRUC_SEPARATOR</a>&#160;&#160;&#160;'.'</td></tr>
<tr class="memdesc:aeb8e473dff428ee0345f5f055a121748"><td class="mdescLeft">&#160;</td><td class="mdescRight">structname.fieldname <br /></td></tr>
<tr class="separator:aeb8e473dff428ee0345f5f055a121748"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaccfe4bd98a5a647372d6a78cec974b24"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaccfe4bd98a5a647372d6a78cec974b24"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_f__.html#gaccfe4bd98a5a647372d6a78cec974b24">MF_OK</a>&#160;&#160;&#160;0x00000001</td></tr>
<tr class="memdesc:gaccfe4bd98a5a647372d6a78cec974b24"><td class="mdescLeft">&#160;</td><td class="mdescRight">is the member ok? (always yes) <br /></td></tr>
<tr class="separator:gaccfe4bd98a5a647372d6a78cec974b24"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga89b7269b6e37b1ac4bb174d975c8b317"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga89b7269b6e37b1ac4bb174d975c8b317"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_f__.html#ga89b7269b6e37b1ac4bb174d975c8b317">MF_UNIMEM</a>&#160;&#160;&#160;0x00000002</td></tr>
<tr class="memdesc:ga89b7269b6e37b1ac4bb174d975c8b317"><td class="mdescLeft">&#160;</td><td class="mdescRight">is a member of a union? <br /></td></tr>
<tr class="separator:ga89b7269b6e37b1ac4bb174d975c8b317"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab2762034a9926a1b10785fd30441180a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gab2762034a9926a1b10785fd30441180a"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_f__.html#gab2762034a9926a1b10785fd30441180a">MF_HASUNI</a>&#160;&#160;&#160;0x00000004</td></tr>
<tr class="memdesc:gab2762034a9926a1b10785fd30441180a"><td class="mdescLeft">&#160;</td><td class="mdescRight">has members of type "union"? <br /></td></tr>
<tr class="separator:gab2762034a9926a1b10785fd30441180a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga4ccee9f4292a0f5b3a1cf762487f561e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga4ccee9f4292a0f5b3a1cf762487f561e"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_f__.html#ga4ccee9f4292a0f5b3a1cf762487f561e">MF_BYTIL</a>&#160;&#160;&#160;0x00000008</td></tr>
<tr class="memdesc:ga4ccee9f4292a0f5b3a1cf762487f561e"><td class="mdescLeft">&#160;</td><td class="mdescRight">the member was created due to the type system <br /></td></tr>
<tr class="separator:ga4ccee9f4292a0f5b3a1cf762487f561e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga52a54e365e7a771b3ce5740f1c3754da"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga52a54e365e7a771b3ce5740f1c3754da"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___m_f__.html#ga52a54e365e7a771b3ce5740f1c3754da">MF_HASTI</a>&#160;&#160;&#160;0x00000010</td></tr>
<tr class="memdesc:ga52a54e365e7a771b3ce5740f1c3754da"><td class="mdescLeft">&#160;</td><td class="mdescRight">has type information? <br /></td></tr>
<tr class="separator:ga52a54e365e7a771b3ce5740f1c3754da"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab2887ca1c10ddaf7ec691ee1a7c506d9"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___s_f__.html#gab2887ca1c10ddaf7ec691ee1a7c506d9">SF_VAR</a>&#160;&#160;&#160;0x00000001</td></tr>
<tr class="memdesc:gab2887ca1c10ddaf7ec691ee1a7c506d9"><td class="mdescLeft">&#160;</td><td class="mdescRight">is variable size structure (varstruct)?  <a href="group___s_f__.html#gab2887ca1c10ddaf7ec691ee1a7c506d9">More...</a><br /></td></tr>
<tr class="separator:gab2887ca1c10ddaf7ec691ee1a7c506d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga179c261302637756337e83e8a8bfde06"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___s_f__.html#ga179c261302637756337e83e8a8bfde06">SF_UNION</a>&#160;&#160;&#160;0x00000002</td></tr>
<tr class="memdesc:ga179c261302637756337e83e8a8bfde06"><td class="mdescLeft">&#160;</td><td class="mdescRight">is a union?  <a href="group___s_f__.html#ga179c261302637756337e83e8a8bfde06">More...</a><br /></td></tr>
<tr class="separator:ga179c261302637756337e83e8a8bfde06"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9f266f43562a29fa4495652be7c479d3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga9f266f43562a29fa4495652be7c479d3"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___s_f__.html#ga9f266f43562a29fa4495652be7c479d3">SF_HASUNI</a>&#160;&#160;&#160;0x00000004</td></tr>
<tr class="memdesc:ga9f266f43562a29fa4495652be7c479d3"><td class="mdescLeft">&#160;</td><td class="mdescRight">has members of type "union"? <br /></td></tr>
<tr class="separator:ga9f266f43562a29fa4495652be7c479d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac555d5d6421d2526a0256b9dfd0a89ea"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gac555d5d6421d2526a0256b9dfd0a89ea"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___s_f__.html#gac555d5d6421d2526a0256b9dfd0a89ea">SF_NOLIST</a>&#160;&#160;&#160;0x00000008</td></tr>
<tr class="memdesc:gac555d5d6421d2526a0256b9dfd0a89ea"><td class="mdescLeft">&#160;</td><td class="mdescRight">don't include in the chooser list <br /></td></tr>
<tr class="separator:gac555d5d6421d2526a0256b9dfd0a89ea"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6cf9168b96cf9628391f20a2eef3f67c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga6cf9168b96cf9628391f20a2eef3f67c"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___s_f__.html#ga6cf9168b96cf9628391f20a2eef3f67c">SF_TYPLIB</a>&#160;&#160;&#160;0x00000010</td></tr>
<tr class="memdesc:ga6cf9168b96cf9628391f20a2eef3f67c"><td class="mdescLeft">&#160;</td><td class="mdescRight">the structure comes from type library <br /></td></tr>
<tr class="separator:ga6cf9168b96cf9628391f20a2eef3f67c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga4e6ed7a6362dc0e44e0f0e4e33249a73"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga4e6ed7a6362dc0e44e0f0e4e33249a73"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___s_f__.html#ga4e6ed7a6362dc0e44e0f0e4e33249a73">SF_HIDDEN</a>&#160;&#160;&#160;0x00000020</td></tr>
<tr class="memdesc:ga4e6ed7a6362dc0e44e0f0e4e33249a73"><td class="mdescLeft">&#160;</td><td class="mdescRight">the structure is collapsed <br /></td></tr>
<tr class="separator:ga4e6ed7a6362dc0e44e0f0e4e33249a73"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga1b395347ef66eb4a1faa5c584421a3e8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga1b395347ef66eb4a1faa5c584421a3e8"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___s_f__.html#ga1b395347ef66eb4a1faa5c584421a3e8">SF_FRAME</a>&#160;&#160;&#160;0x00000040</td></tr>
<tr class="memdesc:ga1b395347ef66eb4a1faa5c584421a3e8"><td class="mdescLeft">&#160;</td><td class="mdescRight">the structure is a function frame <br /></td></tr>
<tr class="separator:ga1b395347ef66eb4a1faa5c584421a3e8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga758f228e585003ae05f1d9e476ccbdd7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga758f228e585003ae05f1d9e476ccbdd7"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___s_f__.html#ga758f228e585003ae05f1d9e476ccbdd7">SF_ALIGN</a>&#160;&#160;&#160;0x00000F80</td></tr>
<tr class="memdesc:ga758f228e585003ae05f1d9e476ccbdd7"><td class="mdescLeft">&#160;</td><td class="mdescRight">alignment (shift amount: 0..31) <br /></td></tr>
<tr class="separator:ga758f228e585003ae05f1d9e476ccbdd7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad19e7396164061042fb789b0ae8dde88"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gad19e7396164061042fb789b0ae8dde88"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___s_f__.html#gad19e7396164061042fb789b0ae8dde88">SF_GHOST</a>&#160;&#160;&#160;0x00001000</td></tr>
<tr class="memdesc:gad19e7396164061042fb789b0ae8dde88"><td class="mdescLeft">&#160;</td><td class="mdescRight">ghost copy of a local type <br /></td></tr>
<tr class="separator:gad19e7396164061042fb789b0ae8dde88"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8a1c6621ffba3c30a6377af284fbe1eb"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga8a1c6621ffba3c30a6377af284fbe1eb"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___s_e_t___m_e_m_t_i__.html#ga8a1c6621ffba3c30a6377af284fbe1eb">SET_MEMTI_MAY_DESTROY</a>&#160;&#160;&#160;0x0001</td></tr>
<tr class="memdesc:ga8a1c6621ffba3c30a6377af284fbe1eb"><td class="mdescLeft">&#160;</td><td class="mdescRight">may destroy other members <br /></td></tr>
<tr class="separator:ga8a1c6621ffba3c30a6377af284fbe1eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga2df3838e610f16430d9df4da57656a88"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga2df3838e610f16430d9df4da57656a88"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___s_e_t___m_e_m_t_i__.html#ga2df3838e610f16430d9df4da57656a88">SET_MEMTI_COMPATIBLE</a>&#160;&#160;&#160;0x0002</td></tr>
<tr class="memdesc:ga2df3838e610f16430d9df4da57656a88"><td class="mdescLeft">&#160;</td><td class="mdescRight">new type must be compatible with the old <br /></td></tr>
<tr class="separator:ga2df3838e610f16430d9df4da57656a88"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7e810dcdad667bc02fc400a115b57e72"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga7e810dcdad667bc02fc400a115b57e72"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___s_e_t___m_e_m_t_i__.html#ga7e810dcdad667bc02fc400a115b57e72">SET_MEMTI_FUNCARG</a>&#160;&#160;&#160;0x0004</td></tr>
<tr class="memdesc:ga7e810dcdad667bc02fc400a115b57e72"><td class="mdescLeft">&#160;</td><td class="mdescRight">mptr is function argument (can not create arrays) <br /></td></tr>
<tr class="separator:ga7e810dcdad667bc02fc400a115b57e72"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8b1457187807a21538bfd999f0c05514"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga8b1457187807a21538bfd999f0c05514"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___s_e_t___m_e_m_t_i__.html#ga8b1457187807a21538bfd999f0c05514">SET_MEMTI_BYTIL</a>&#160;&#160;&#160;0x0008</td></tr>
<tr class="memdesc:ga8b1457187807a21538bfd999f0c05514"><td class="mdescLeft">&#160;</td><td class="mdescRight">new type was created by the type subsystem <br /></td></tr>
<tr class="separator:ga8b1457187807a21538bfd999f0c05514"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa79b78eb8c34a4f4fe940a15ae88b11f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaa79b78eb8c34a4f4fe940a15ae88b11f"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___s_e_t___m_e_m_t_i__.html#gaa79b78eb8c34a4f4fe940a15ae88b11f">SET_MEMTI_USERTI</a>&#160;&#160;&#160;0x0010</td></tr>
<tr class="memdesc:gaa79b78eb8c34a4f4fe940a15ae88b11f"><td class="mdescLeft">&#160;</td><td class="mdescRight">user-specified type <br /></td></tr>
<tr class="separator:gaa79b78eb8c34a4f4fe940a15ae88b11f"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
Enumerations</h2></td></tr>
<tr class="memitem:a7e006e866b807ff36125e69097de8a48"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#a7e006e866b807ff36125e69097de8a48">struc_error_t</a> { <br />
&#160;&#160;<a class="el" href="struct_8hpp.html#a7e006e866b807ff36125e69097de8a48a7863b4c99228b653a0f9237ff4a9cc79">STRUC_ERROR_MEMBER_OK</a> = 0, 
<a class="el" href="struct_8hpp.html#a7e006e866b807ff36125e69097de8a48ae71fb6b1f4371ee4f25d99c9e6548462">STRUC_ERROR_MEMBER_NAME</a> = -1, 
<a class="el" href="struct_8hpp.html#a7e006e866b807ff36125e69097de8a48a6afa947f335ba64eadf32f3a15f6715e">STRUC_ERROR_MEMBER_OFFSET</a> = -2, 
<a class="el" href="struct_8hpp.html#a7e006e866b807ff36125e69097de8a48a805242b8970597654ade0e741a841ed0">STRUC_ERROR_MEMBER_SIZE</a> = -3, 
<br />
&#160;&#160;<a class="el" href="struct_8hpp.html#a7e006e866b807ff36125e69097de8a48a291cb4fd7ae811bc7deda3c7ebac0001">STRUC_ERROR_MEMBER_TINFO</a> = -4, 
<a class="el" href="struct_8hpp.html#a7e006e866b807ff36125e69097de8a48a018a34286c09650cf855a03209987c4e">STRUC_ERROR_MEMBER_STRUCT</a> = -5, 
<a class="el" href="struct_8hpp.html#a7e006e866b807ff36125e69097de8a48a5e0299347c70fb398057d8c3e3bf6855">STRUC_ERROR_MEMBER_UNIVAR</a> = -6, 
<a class="el" href="struct_8hpp.html#a7e006e866b807ff36125e69097de8a48a14b7a50ae1cfd4f23d7a60498fa5ea2d">STRUC_ERROR_MEMBER_VARLAST</a> = -7, 
<br />
&#160;&#160;<a class="el" href="struct_8hpp.html#a7e006e866b807ff36125e69097de8a48a549fb77ade937758f3a92462631d0afb">STRUC_ERROR_MEMBER_NESTED</a> = -8
<br />
 }</td></tr>
<tr class="memdesc:a7e006e866b807ff36125e69097de8a48"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return values for <a class="el" href="struct_8hpp.html#aac091455bceeadbd384f57292a3dc2a2" title="Add member to existing structure. ">add_struc_member()</a>  <a href="struct_8hpp.html#a7e006e866b807ff36125e69097de8a48">More...</a><br /></td></tr>
<tr class="separator:a7e006e866b807ff36125e69097de8a48"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:addab072d470c849945079dbd99ee1e21"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_8hpp.html#addab072d470c849945079dbd99ee1e21">smt_code_t</a> { <br />
&#160;&#160;<a class="el" href="struct_8hpp.html#addab072d470c849945079dbd99ee1e21ae3524f3e3504ead335b5875996df21aa">SMT_BADARG</a> = -6, 
<a class="el" href="struct_8hpp.html#addab072d470c849945079dbd99ee1e21a3171ec61b11eabd4fa0cca7c44c76f74">SMT_NOCOMPAT</a> = -5, 
<a class="el" href="struct_8hpp.html#addab072d470c849945079dbd99ee1e21ae9a9caecdd11765cdc5cd0059d43b6e2">SMT_WORSE</a> = -4, 
<a class="el" href="struct_8hpp.html#addab072d470c849945079dbd99ee1e21a288f91cdac82c34a7fa0632026d78430">SMT_SIZE</a> = -3, 
<br />
&#160;&#160;<a class="el" href="struct_8hpp.html#addab072d470c849945079dbd99ee1e21af94655ab46422318fcc774a033c4c851">SMT_ARRAY</a> = -2, 
<a class="el" href="struct_8hpp.html#addab072d470c849945079dbd99ee1e21ade46ab40e111029e415c77129043fdd5">SMT_OVERLAP</a> = -1, 
<a class="el" href="struct_8hpp.html#addab072d470c849945079dbd99ee1e21a40b1a482baceefc13b2c2293517931d2">SMT_FAILED</a> = 0, 
<a class="el" href="struct_8hpp.html#addab072d470c849945079dbd99ee1e21af84edb20e8e29624b8f18c9da7516b12">SMT_OK</a> = 1, 
<br />
&#160;&#160;<a class="el" href="struct_8hpp.html#addab072d470c849945079dbd99ee1e21ad8239f9d550dcebe4cc4a2583e640e93">SMT_KEEP</a> = 2
<br />
 }</td></tr>
<tr class="memdesc:addab072d470c849945079dbd99ee1e21"><td class="mdescLeft">&#160;</td><td class="mdescRight">Member type information (return values for <a class="el" href="struct_8hpp.html#aaa3683a4790b5ad049a50afc0e0a961e" title="Set tinfo for given member. ">set_member_tinfo()</a>)  <a href="struct_8hpp.html#addab072d470c849945079dbd99ee1e21">More...</a><br /></td></tr>
<tr class="separator:addab072d470c849945079dbd99ee1e21"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Enumeration Type Documentation</h2>
<a class="anchor" id="a7e006e866b807ff36125e69097de8a48"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="struct_8hpp.html#a7e006e866b807ff36125e69097de8a48">struc_error_t</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Return values for <a class="el" href="struct_8hpp.html#aac091455bceeadbd384f57292a3dc2a2" title="Add member to existing structure. ">add_struc_member()</a> </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="a7e006e866b807ff36125e69097de8a48a7863b4c99228b653a0f9237ff4a9cc79"></a>STRUC_ERROR_MEMBER_OK&#160;</td><td class="fielddoc">
<p>success </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a7e006e866b807ff36125e69097de8a48ae71fb6b1f4371ee4f25d99c9e6548462"></a>STRUC_ERROR_MEMBER_NAME&#160;</td><td class="fielddoc">
<p>already has member with this name (bad name) </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a7e006e866b807ff36125e69097de8a48a6afa947f335ba64eadf32f3a15f6715e"></a>STRUC_ERROR_MEMBER_OFFSET&#160;</td><td class="fielddoc">
<p>already has member at this offset </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a7e006e866b807ff36125e69097de8a48a805242b8970597654ade0e741a841ed0"></a>STRUC_ERROR_MEMBER_SIZE&#160;</td><td class="fielddoc">
<p>bad number of bytes or bad sizeof(type) </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a7e006e866b807ff36125e69097de8a48a291cb4fd7ae811bc7deda3c7ebac0001"></a>STRUC_ERROR_MEMBER_TINFO&#160;</td><td class="fielddoc">
<p>bad typeid parameter </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a7e006e866b807ff36125e69097de8a48a018a34286c09650cf855a03209987c4e"></a>STRUC_ERROR_MEMBER_STRUCT&#160;</td><td class="fielddoc">
<p>bad struct id (the 1st argument) </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a7e006e866b807ff36125e69097de8a48a5e0299347c70fb398057d8c3e3bf6855"></a>STRUC_ERROR_MEMBER_UNIVAR&#160;</td><td class="fielddoc">
<p>unions can't have variable sized members </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a7e006e866b807ff36125e69097de8a48a14b7a50ae1cfd4f23d7a60498fa5ea2d"></a>STRUC_ERROR_MEMBER_VARLAST&#160;</td><td class="fielddoc">
<p>variable sized member should be the last member in the structure </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a7e006e866b807ff36125e69097de8a48a549fb77ade937758f3a92462631d0afb"></a>STRUC_ERROR_MEMBER_NESTED&#160;</td><td class="fielddoc">
<p>recursive structure nesting is forbidden </p>
</td></tr>
</table>

</div>
</div>
<a class="anchor" id="addab072d470c849945079dbd99ee1e21"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="struct_8hpp.html#addab072d470c849945079dbd99ee1e21">smt_code_t</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Member type information (return values for <a class="el" href="struct_8hpp.html#aaa3683a4790b5ad049a50afc0e0a961e" title="Set tinfo for given member. ">set_member_tinfo()</a>) </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="addab072d470c849945079dbd99ee1e21ae3524f3e3504ead335b5875996df21aa"></a>SMT_BADARG&#160;</td><td class="fielddoc">
<p>bad parameters </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="addab072d470c849945079dbd99ee1e21a3171ec61b11eabd4fa0cca7c44c76f74"></a>SMT_NOCOMPAT&#160;</td><td class="fielddoc">
<p>the new type is not compatible with the old type </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="addab072d470c849945079dbd99ee1e21ae9a9caecdd11765cdc5cd0059d43b6e2"></a>SMT_WORSE&#160;</td><td class="fielddoc">
<p>the new type is worse than the old type </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="addab072d470c849945079dbd99ee1e21a288f91cdac82c34a7fa0632026d78430"></a>SMT_SIZE&#160;</td><td class="fielddoc">
<p>the new type is incompatible with the member size </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="addab072d470c849945079dbd99ee1e21af94655ab46422318fcc774a033c4c851"></a>SMT_ARRAY&#160;</td><td class="fielddoc">
<p>arrays are forbidden as function arguments </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="addab072d470c849945079dbd99ee1e21ade46ab40e111029e415c77129043fdd5"></a>SMT_OVERLAP&#160;</td><td class="fielddoc">
<p>member would overlap with members that can not be deleted </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="addab072d470c849945079dbd99ee1e21a40b1a482baceefc13b2c2293517931d2"></a>SMT_FAILED&#160;</td><td class="fielddoc">
<p>failed to set new member type </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="addab072d470c849945079dbd99ee1e21af84edb20e8e29624b8f18c9da7516b12"></a>SMT_OK&#160;</td><td class="fielddoc">
<p>success: changed the member type </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="addab072d470c849945079dbd99ee1e21ad8239f9d550dcebe4cc4a2583e640e93"></a>SMT_KEEP&#160;</td><td class="fielddoc">
<p>no need to change the member type, the old type is better </p>
</td></tr>
</table>

</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a class="anchor" id="a85d2ea8f387b1b07aeaab63ba524a610"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="pro_8h.html#a8ddba56b40c4be92718f8059abf51147">idaman</a> <a class="el" href="pro_8h.html#aef265b11f25357d520dcfd40aa8c18f3">uval_t</a> <a class="el" href="pro_8h.html#a176294e75f953787714b9d08ffa89adf">ida_export</a> get_first_struc_idx </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get index of first structure. </p>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="pro_8h.html#a63a7c1cde5fb0cf0d0023d55c742dd4f" title="this value is used for &#39;bad address&#39; ">BADADDR</a> if no known structures, 0 otherwise </dd></dl>

</div>
</div>
<a class="anchor" id="aaf74b0f354956a690bc8c770bbfa27a2"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="pro_8h.html#a8ddba56b40c4be92718f8059abf51147">idaman</a> <a class="el" href="pro_8h.html#aef265b11f25357d520dcfd40aa8c18f3">uval_t</a> <a class="el" href="pro_8h.html#a176294e75f953787714b9d08ffa89adf">ida_export</a> get_last_struc_idx </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get index of last structure. </p>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="pro_8h.html#a63a7c1cde5fb0cf0d0023d55c742dd4f" title="this value is used for &#39;bad address&#39; ">BADADDR</a> if no known structures, <a class="el" href="struct_8hpp.html#a3b42dbf3a42f5d3276bcd200a55a5889" title="Get number of known structures. ">get_struc_qty()</a>-1 otherwise </dd></dl>

</div>
</div>
<a class="anchor" id="a8f988e27cbc3a3ec4c361c8c1592eae9"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="pro_8h.html#aef265b11f25357d520dcfd40aa8c18f3">uval_t</a> get_prev_struc_idx </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="pro_8h.html#aef265b11f25357d520dcfd40aa8c18f3">uval_t</a>&#160;</td>
          <td class="paramname"><em>idx</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Get previous struct index. </p>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="pro_8h.html#a63a7c1cde5fb0cf0d0023d55c742dd4f" title="this value is used for &#39;bad address&#39; ">BADADDR</a> if resulting index is negative, otherwise idx - 1 </dd></dl>

</div>
</div>
<a class="anchor" id="a57063f026ec4e0aca498adc1f55d01ec"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="pro_8h.html#a8ddba56b40c4be92718f8059abf51147">idaman</a> <a class="el" href="pro_8h.html#aef265b11f25357d520dcfd40aa8c18f3">uval_t</a> <a class="el" href="pro_8h.html#a176294e75f953787714b9d08ffa89adf">ida_export</a> get_next_struc_idx </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="pro_8h.html#aef265b11f25357d520dcfd40aa8c18f3">uval_t</a>&#160;</td>
          <td class="paramname"><em>idx</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get next struct index. </p>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="pro_8h.html#a63a7c1cde5fb0cf0d0023d55c742dd4f" title="this value is used for &#39;bad address&#39; ">BADADDR</a> if resulting index is out of bounds, otherwise idx++ </dd></dl>

</div>
</div>
<a class="anchor" id="a50759fd85eebb25000c9a4b7e28b5be3"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="pro_8h.html#a8ddba56b40c4be92718f8059abf51147">idaman</a> <a class="el" href="pro_8h.html#a7b0aeaed04e477c02cf8ea3452002d1a">ea_t</a> <a class="el" href="pro_8h.html#a176294e75f953787714b9d08ffa89adf">ida_export</a> get_struc_prev_offset </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classstruc__t.html">struc_t</a> *&#160;</td>
          <td class="paramname"><em>sptr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="pro_8h.html#a7b0aeaed04e477c02cf8ea3452002d1a">ea_t</a>&#160;</td>
          <td class="paramname"><em>offset</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get offset of member with largest offset less than 'offset'. </p>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="pro_8h.html#a63a7c1cde5fb0cf0d0023d55c742dd4f" title="this value is used for &#39;bad address&#39; ">BADADDR</a> if no prev offset </dd></dl>

</div>
</div>
<a class="anchor" id="afe11be18398d534be6b5f4c33a23bf0b"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="pro_8h.html#a8ddba56b40c4be92718f8059abf51147">idaman</a> <a class="el" href="pro_8h.html#a7b0aeaed04e477c02cf8ea3452002d1a">ea_t</a> <a class="el" href="pro_8h.html#a176294e75f953787714b9d08ffa89adf">ida_export</a> get_struc_next_offset </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classstruc__t.html">struc_t</a> *&#160;</td>
          <td class="paramname"><em>sptr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="pro_8h.html#a7b0aeaed04e477c02cf8ea3452002d1a">ea_t</a>&#160;</td>
          <td class="paramname"><em>offset</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get offset of member with smallest offset larger than 'offset'. </p>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="pro_8h.html#a63a7c1cde5fb0cf0d0023d55c742dd4f" title="this value is used for &#39;bad address&#39; ">BADADDR</a> if no next offset </dd></dl>

</div>
</div>
<a class="anchor" id="ae9c8cc9e81856e49de9697688e7d14c8"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="pro_8h.html#a8ddba56b40c4be92718f8059abf51147">idaman</a> <a class="el" href="pro_8h.html#a7b0aeaed04e477c02cf8ea3452002d1a">ea_t</a> <a class="el" href="pro_8h.html#a176294e75f953787714b9d08ffa89adf">ida_export</a> get_struc_last_offset </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classstruc__t.html">struc_t</a> *&#160;</td>
          <td class="paramname"><em>sptr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get offset of last member. </p>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="pro_8h.html#a63a7c1cde5fb0cf0d0023d55c742dd4f" title="this value is used for &#39;bad address&#39; ">BADADDR</a> if memqty == 0 </dd></dl>

</div>
</div>
<a class="anchor" id="a79228860947a6137908c25949a91ad5a"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="pro_8h.html#a8ddba56b40c4be92718f8059abf51147">idaman</a> <a class="el" href="pro_8h.html#a7b0aeaed04e477c02cf8ea3452002d1a">ea_t</a> <a class="el" href="pro_8h.html#a176294e75f953787714b9d08ffa89adf">ida_export</a> get_struc_first_offset </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classstruc__t.html">struc_t</a> *&#160;</td>
          <td class="paramname"><em>sptr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get offset of first member. </p>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="pro_8h.html#a63a7c1cde5fb0cf0d0023d55c742dd4f" title="this value is used for &#39;bad address&#39; ">BADADDR</a> if memqty == 0 </dd></dl>

</div>
</div>
<a class="anchor" id="a7b26cd7eac6dcd15d1458992c4efa4b3"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="pro_8h.html#adbc570541d9f9a0c4489f9f1fe5f5699">asize_t</a> get_member_size </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classmember__t.html">member_t</a> *&#160;</td>
          <td class="paramname"><em>mptr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Get size of structure member. </p>
<p>May return 0 for the last member of varstruct. For union members, returns <a class="el" href="classmember__t.html#acc1698d4bdd05601d40c915a80235a38" title="end offset ">member_t::eoff</a>. </p>

</div>
</div>
<a class="anchor" id="a63118e9b36f696afcb269228c5b38459"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="pro_8h.html#a8ddba56b40c4be92718f8059abf51147">idaman</a> <a class="el" href="classmember__t.html">member_t</a>* <a class="el" href="pro_8h.html#a176294e75f953787714b9d08ffa89adf">ida_export</a> get_best_fit_member </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classstruc__t.html">struc_t</a> *&#160;</td>
          <td class="paramname"><em>sptr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="pro_8h.html#adbc570541d9f9a0c4489f9f1fe5f5699">asize_t</a>&#160;</td>
          <td class="paramname"><em>offset</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get member that is most likely referenced by the specified offset. </p>
<p>Useful for offsets &gt; sizeof(struct). </p>

</div>
</div>
<a class="anchor" id="ae824ee337c3e36cb1d55cf6d9dbd0fc0"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="pro_8h.html#a8ddba56b40c4be92718f8059abf51147">idaman</a> <a class="el" href="pro_8h.html#ad8791d30d19843bc09b78bdf01a852ec">tid_t</a> <a class="el" href="pro_8h.html#a176294e75f953787714b9d08ffa89adf">ida_export</a> add_struc </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="pro_8h.html#aef265b11f25357d520dcfd40aa8c18f3">uval_t</a>&#160;</td>
          <td class="paramname"><em>idx</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>is_union</em> = <code>false</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Create a structure type. </p>
<p>if idx==<a class="el" href="pro_8h.html#a63a7c1cde5fb0cf0d0023d55c742dd4f" title="this value is used for &#39;bad address&#39; ">BADADDR</a> then add as the last idx. if name==NULL then a name will be generated "struct_%d". </p>

</div>
</div>
<a class="anchor" id="a4f64fada72a83ec4eebb1d50f53acaad"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="pro_8h.html#a8ddba56b40c4be92718f8059abf51147">idaman</a> bool <a class="el" href="pro_8h.html#a176294e75f953787714b9d08ffa89adf">ida_export</a> set_struc_idx </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classstruc__t.html">struc_t</a> *&#160;</td>
          <td class="paramname"><em>sptr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="pro_8h.html#aef265b11f25357d520dcfd40aa8c18f3">uval_t</a>&#160;</td>
          <td class="paramname"><em>idx</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set internal number of struct. </p>
<p>Also see <a class="el" href="struct_8hpp.html#ad42189a9c7e10a0df284428dfcd7e334" title="Get internal number of the structure. ">get_struc_idx()</a>, <a class="el" href="struct_8hpp.html#a94b7fc0c2093f385012ddb5b1d05743a" title="Get struct id by struct number. ">get_struc_by_idx()</a>. </p>

</div>
</div>
<a class="anchor" id="aac091455bceeadbd384f57292a3dc2a2"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="pro_8h.html#a8ddba56b40c4be92718f8059abf51147">idaman</a> <a class="el" href="struct_8hpp.html#a7e006e866b807ff36125e69097de8a48">struc_error_t</a> <a class="el" href="pro_8h.html#a176294e75f953787714b9d08ffa89adf">ida_export</a> add_struc_member </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classstruc__t.html">struc_t</a> *&#160;</td>
          <td class="paramname"><em>sptr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>fieldname</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="pro_8h.html#a7b0aeaed04e477c02cf8ea3452002d1a">ea_t</a>&#160;</td>
          <td class="paramname"><em>offset</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="pro_8h.html#a55dd00e03168fb5180830e87ef0a2c57">flags_t</a>&#160;</td>
          <td class="paramname"><em>flag</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="unionopinfo__t.html">opinfo_t</a> *&#160;</td>
          <td class="paramname"><em>mt</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="pro_8h.html#adbc570541d9f9a0c4489f9f1fe5f5699">asize_t</a>&#160;</td>
          <td class="paramname"><em>nbytes</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Add member to existing structure. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">sptr</td><td>structure to modify </td></tr>
    <tr><td class="paramname">fieldname</td><td>if NULL, then "anonymous_#" name will be generated </td></tr>
    <tr><td class="paramname">offset</td><td><a class="el" href="pro_8h.html#a63a7c1cde5fb0cf0d0023d55c742dd4f" title="this value is used for &#39;bad address&#39; ">BADADDR</a> means add to the end of structure </td></tr>
    <tr><td class="paramname">flag</td><td>type + representation bits </td></tr>
    <tr><td class="paramname">mt</td><td>additional info about member type. must be present for structs, offsets, enums, strings, struct offsets. </td></tr>
    <tr><td class="paramname">nbytes</td><td>if == 0 then the structure will be a varstruct. in this case the member should be the last member in the structure </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a74df0b6078b09eb1d865adc4ea8b07b0"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="pro_8h.html#a8ddba56b40c4be92718f8059abf51147">idaman</a> int <a class="el" href="pro_8h.html#a176294e75f953787714b9d08ffa89adf">ida_export</a> del_struc_members </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classstruc__t.html">struc_t</a> *&#160;</td>
          <td class="paramname"><em>sptr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="pro_8h.html#a7b0aeaed04e477c02cf8ea3452002d1a">ea_t</a>&#160;</td>
          <td class="paramname"><em>off1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="pro_8h.html#a7b0aeaed04e477c02cf8ea3452002d1a">ea_t</a>&#160;</td>
          <td class="paramname"><em>off2</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Delete members which occupy range of offsets (off1..off2). </p>
<dl class="section return"><dt>Returns</dt><dd>number of deleted members or -1 on error </dd></dl>

</div>
</div>
<a class="anchor" id="aaa3683a4790b5ad049a50afc0e0a961e"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="pro_8h.html#a8ddba56b40c4be92718f8059abf51147">idaman</a> <a class="el" href="struct_8hpp.html#addab072d470c849945079dbd99ee1e21">smt_code_t</a> <a class="el" href="pro_8h.html#a176294e75f953787714b9d08ffa89adf">ida_export</a> set_member_tinfo </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classstruc__t.html">struc_t</a> *&#160;</td>
          <td class="paramname"><em>sptr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classmember__t.html">member_t</a> *&#160;</td>
          <td class="paramname"><em>mptr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="pro_8h.html#aef265b11f25357d520dcfd40aa8c18f3">uval_t</a>&#160;</td>
          <td class="paramname"><em>memoff</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classtinfo__t.html">tinfo_t</a> &amp;&#160;</td>
          <td class="paramname"><em>tif</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>flags</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set tinfo for given member. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">sptr</td><td>containing struct </td></tr>
    <tr><td class="paramname">mptr</td><td>target member </td></tr>
    <tr><td class="paramname">memoff</td><td>offset within member </td></tr>
    <tr><td class="paramname">tif</td><td>type info </td></tr>
    <tr><td class="paramname">flags</td><td><a class="el" href="group___s_e_t___m_e_m_t_i__.html">Set member tinfo flags</a> </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a55f8f177dc0b2e79220fe8147314626a"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="pro_8h.html#a8ddba56b40c4be92718f8059abf51147">idaman</a> <a class="el" href="pro_8h.html#a55dd00e03168fb5180830e87ef0a2c57">flags_t</a> <a class="el" href="pro_8h.html#a176294e75f953787714b9d08ffa89adf">ida_export</a> visit_stroff_fields </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structstruct__field__visitor__t.html">struct_field_visitor_t</a> &amp;&#160;</td>
          <td class="paramname"><em>sfv</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="pro_8h.html#ad8791d30d19843bc09b78bdf01a852ec">tid_t</a> *&#160;</td>
          <td class="paramname"><em>path</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>plen</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="pro_8h.html#ac29a387cc69c0d1abb2f2ef05dad1a6f">adiff_t</a> *&#160;</td>
          <td class="paramname"><em>disp</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>appzero</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Visit structure fields in a stroff expression or in a reference to a struct data variable. </p>
<p>This function can be used to enumerate all components of an expression like 'a.b.c'. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir"></td><td class="paramname">sfv</td><td>visitor object </td></tr>
    <tr><td class="paramdir"></td><td class="paramname">path</td><td>struct path (path[0] contains the initial struct id) </td></tr>
    <tr><td class="paramdir"></td><td class="paramname">plen</td><td>len </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">disp</td><td>offset into structure </td></tr>
    <tr><td class="paramdir"></td><td class="paramname">appzero</td><td>should visit field at offset zero? </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.9.1
</small></address>
</body>
</html>
